package com.bmbfm.completablefuture.mock;

/**
 * 模拟对外请求的具体耗时服务
 */
public class HttpRequestMock {

    public static PriceResult getMouBaoPrice(String productName) {
        //模拟网络延迟 1秒 种：获取某宝数据
        mockCostTimeOperationn();
        PriceResult result = new PriceResult("某宝");
        result.setPrice(5888);
        LogPrint.printLog("获取某宝上 " + productName + "的价格完成：" + result.getPrice());
        return result;
    }

    public static double getMouBaoDiscounts(String productName) {
        //模拟网络延迟 1秒 种：获取某宝优惠数据
        mockCostTimeOperationn();
        LogPrint.printLog("获取某宝上 " + productName + "的优惠完成： -200");
        return 200;
    }

    public static PriceResult getMouDongPrice(String productName) {
        // 模拟网络延迟 1秒 种：获取某东数据
        mockCostTimeOperationn();
        PriceResult result = new PriceResult("某东");
        result.setPrice(5999);
        LogPrint.printLog("获取某东上 " + productName + "的价格完成：" + result.getPrice());
        return result;
    }

    public static double getMouDongDiscounts(String productName) {
        //模拟网络延迟 1秒 种：获取某东优惠数据
        mockCostTimeOperationn();
        LogPrint.printLog("获取某东上 " + productName + "的优惠完成： -150");
        return 150;
    }

    public static PriceResult getMouDuoDuoPrice(String productName) {
        // 模拟网络延迟 1秒 种：获取某多多数据
        mockCostTimeOperationn();
        PriceResult result = new PriceResult("某多多");
        result.setPrice(5399);
        LogPrint.printLog("获取某多多上 " + productName + "的价格完成：" + result.getPrice());
        return result;
    }

    public static double getMouDuoDuoDiscounts(String productName) {
        //模拟网络延迟 1秒 种：获取某多多优惠数据
        mockCostTimeOperationn();
        LogPrint.printLog("获取某多多上 " + productName + "的优惠完成： -500");
        return 500;
    }

    // 模拟网络延迟1秒钟
    private static void mockCostTimeOperationn() {
        try {
            Thread.sleep(1000L);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }


}
